home *** CD-ROM | disk | FTP | other *** search
/ Nebula 2 / Nebula Two.iso / SourceCode / Database / CardFile_Source / CardFile_Advanced / Customer.m < prev    next >
Text File  |  1993-11-11  |  1KB  |  76 lines

  1. /*
  2.  *
  3.  * Customer.m
  4.  *
  5.  *    You may freely copy, distribute and reuse the code in this example.
  6.  *    NeXT disclaims any warranty of any kind, expressed or implied, as to
  7.  *    its fitness for any particular use.
  8.  *
  9.  */
  10.  
  11. #import "Customer.h"
  12.  
  13. @implementation Customer
  14.  
  15.  
  16. // Overridden methods
  17.  
  18. - init
  19. {
  20.     [super init];
  21.     // "template" values for a new customer are here
  22.     name = NXCopyStringBuffer("Joe Customer");     
  23.     return self;
  24. }
  25.  
  26. - free
  27. {
  28.     if(name != NULL) NX_FREE(name);
  29.     return [super free];
  30. }
  31.  
  32. - read:(NXTypedStream *)stream
  33. {
  34.     [super read:stream];
  35.     NXReadTypes(stream, "*i", &name, &uid);
  36.     return self;
  37. }
  38.  
  39. - write:(NXTypedStream *)stream
  40. {
  41.     [super write:stream];
  42.     NXWriteTypes(stream, "*i", &name, &uid);
  43.     return self;
  44. }
  45.  
  46.  
  47.  
  48. // Accessor methods
  49.  
  50. - setCustomerName: (const char *)newName
  51. {
  52.     if (name != NULL) NX_FREE(name);
  53.     name = (newName != NULL) ? NXCopyStringBuffer(newName) : NULL;
  54.     return self;
  55. }
  56.  
  57. - (const char *) customerName
  58. {
  59.     return name;
  60. }
  61.  
  62. - setCustomerUid: (int)newUid
  63. {
  64.     // XXX - should check for uniqueness here
  65.     uid = newUid;
  66.     return self;
  67. }
  68.  
  69. - (int) customerUid
  70. {
  71.     return uid;
  72. }
  73.  
  74.  
  75. @end
  76.